package com.lms.string;

import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
import java.nio.channels.spi.SelectorProvider;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Set;

/**
 * @Author: 李孟帅
 * @CreateTime: 2020-03-03 17:35
 * @Description: ${Description}
 */
@SuppressWarnings("all")
public class Demo {
    public static void main(String[] args) throws Exception {

        Selector selector = Selector.open(); //打开选择器
        boolean open = selector.isOpen();//告诉这个选择器是否打开。
        Set<SelectionKey> keys = selector.keys();//返回此选择器的键集。
        SelectorProvider provider = selector.provider();//返回创建此通道的提供程序。
        Set<SelectionKey> selectionKeys = selector.selectedKeys();//返回此选择器的选择键集。
        int select = selector.select(1000);//选择一组其相应通道准备好进行I / O操作的键,最大阻塞1s  返回有通知事件键的数量，可能为零，其即时操作集更新

        int select1 = selector.select(); //选择一组其相应通道准备好进行I / O操作的键。 一直阻塞
        int i = selector.selectNow(); //选择一组其相应通道准备好进行I / O操作的键。 立即返回
        Selector wakeup = selector.wakeup();//导致尚未返回的第一个选择操作立即返回。
        selector.close();//关闭此选择器。


    }

}

